package equals;

public class Main {

    public static void main(String[] args) {
        Employee alice1 = new Employee("one", 10000, 1990, 1, 1);
        Employee alice2 = alice1;
        Employee alice3 = new Employee("one", 10000, 1990, 1, 1);
        Employee bob = new Employee("bob", 20000, 1991, 1, 1);

        System.out.println("alice1 == alice2: " + (alice1 == alice2));
        System.out.println("alice1 == alice3: " + (alice1 == alice3));
        System.out.println("alice1.equals(alice3): " + alice1.equals(alice3));
        System.out.println("alice1.equals(bob): " + alice1.equals(bob));

        System.out.println("bob.toString(): " + bob);

        Manager carl = new Manager("two", 30000, 1990, 1, 1);
        Manager boss = new Manager("two", 30000, 1990, 1, 1);
        boss.setBonus(5000);
        System.out.println("boss.toString(): " + boss);
        System.out.println("carl.equals(boss): " + carl.equals(boss));
        System.out.println("alice1.hashCode(): " + alice1.hashCode());
        System.out.println("alice3.hashCode(): " + alice3.hashCode());
        System.out.println("bob.hashCode(): " + bob.hashCode());
        System.out.println("carl.hashCode(): " + carl.hashCode());
    }
}
